package com.jeesite.modules.ic.entity;

import javax.validation.constraints.Size;

import com.jeesite.common.entity.DataEntity;
import com.jeesite.common.mybatis.annotation.Column;
import com.jeesite.common.mybatis.annotation.Table;
import com.jeesite.common.mybatis.mapper.query.QueryType;

/**
 * 套餐Entity
 * @author 李寒冰
 * @version 2024-07-16
 */
@Table(name="ic_package", alias="a", label="套餐信息", columns={
		@Column(name="id", attrName="id", label="id", isPK=true),
		@Column(name="name", attrName="name", label="套餐名称", queryType=QueryType.LIKE),
		@Column(name="yunyingshang", attrName="yunyingshang", label="运营商"),
		@Column(name="chengbenjia", attrName="chengbenjia", label="成本价"),
		@Column(name="xiaoshoujia", attrName="xiaoshoujia", label="销售价"),
		@Column(name="zongliulkiang", attrName="zongliulkiang", label="总流量"),
		@Column(name="youxiaoqi", attrName="youxiaoqi", label="有效期"),
		@Column(name="month_xiane", attrName="monthXiane", label="月用量限额"),
		@Column(name="is_xianzhi", attrName="isXianzhi", label="月用量限制1限制 2不限制"),
		@Column(name="use_status", attrName="useStatus", label="1 启用 2 停用"),
		@Column(name="status", attrName="status", label="status", isUpdate=false),
		@Column(name="channal_id", attrName="channalId", label="渠道ID"),
		@Column(name="isp", attrName="isp", label="运营商"),
		@Column(name="channel_package_id", attrName="channelPackageId", label="渠道套餐ID"),
		@Column(name="channal_status", attrName="channalStatus", label="渠道状态 "),
		@Column(name="daili_xiaoshoujia", attrName="dailiXiaoshoujia", label="渠道状态 "),
	}, orderBy="a.id DESC"
)
public class IcPackage extends DataEntity<IcPackage> {
	
	private static final long serialVersionUID = 1L;
	private String name;		// 套餐名称
	private String yunyingshang;		// 运营商
	private String chengbenjia;		// 成本价
	private String xiaoshoujia;		// 销售价
	private String zongliulkiang;		// 总流量
	private String youxiaoqi;		// 有效期
	private String monthXiane;		// 月用量限额
	private String isXianzhi;		// 月用量限制1限制 2不限制
	private String useStatus;		// 1 启用 2 停用
	private String channalId;		// 渠道ID
	private String isp;
	private String channelPackageId;//套餐ID
	private Integer channalStatus;
	private String dailiXiaoshoujia;

	public String getDailiXiaoshoujia() {
		return dailiXiaoshoujia;
	}

	public void setDailiXiaoshoujia(String dailiXiaoshoujia) {
		this.dailiXiaoshoujia = dailiXiaoshoujia;
	}

	public void notInPackage(String[] str){
		this.sqlMap.getWhere().and("channel_package_id",QueryType.NOT_IN,str);
	}

	public Integer getChannalStatus() {
		return channalStatus;
	}

	public void setChannalStatus(Integer channalStatus) {
		this.channalStatus = channalStatus;
	}

	public String getChannelPackageId() {
		return channelPackageId;
	}

	public void setChannelPackageId(String channelPackageId) {
		this.channelPackageId = channelPackageId;
	}

	public String getIsp() {
		return isp;
	}

	public void setIsp(String isp) {
		this.isp = isp;
	}

	public IcPackage() {
		this(null);
	}
	
	public IcPackage(String id){
		super(id);
	}
	
	@Size(min=0, max=255, message="套餐名称长度不能超过 255 个字符")
	public String getName() {
		return name;
	}

	public void setName(String name) {
		this.name = name;
	}
	
	@Size(min=0, max=255, message="运营商长度不能超过 255 个字符")
	public String getYunyingshang() {
		return yunyingshang;
	}

	public void setYunyingshang(String yunyingshang) {
		this.yunyingshang = yunyingshang;
	}
	
	@Size(min=0, max=255, message="成本价长度不能超过 255 个字符")
	public String getChengbenjia() {
		return chengbenjia;
	}

	public void setChengbenjia(String chengbenjia) {
		this.chengbenjia = chengbenjia;
	}
	
	@Size(min=0, max=255, message="销售价长度不能超过 255 个字符")
	public String getXiaoshoujia() {
		return xiaoshoujia;
	}

	public void setXiaoshoujia(String xiaoshoujia) {
		this.xiaoshoujia = xiaoshoujia;
	}
	
	@Size(min=0, max=255, message="总流量长度不能超过 255 个字符")
	public String getZongliulkiang() {
		return zongliulkiang;
	}

	public void setZongliulkiang(String zongliulkiang) {
		this.zongliulkiang = zongliulkiang;
	}
	
	@Size(min=0, max=255, message="有效期长度不能超过 255 个字符")
	public String getYouxiaoqi() {
		return youxiaoqi;
	}

	public void setYouxiaoqi(String youxiaoqi) {
		this.youxiaoqi = youxiaoqi;
	}
	
	@Size(min=0, max=255, message="月用量限额长度不能超过 255 个字符")
	public String getMonthXiane() {
		return monthXiane;
	}

	public void setMonthXiane(String monthXiane) {
		this.monthXiane = monthXiane;
	}
	
	@Size(min=0, max=255, message="月用量限制1限制 2不限制长度不能超过 255 个字符")
	public String getIsXianzhi() {
		return isXianzhi;
	}

	public void setIsXianzhi(String isXianzhi) {
		this.isXianzhi = isXianzhi;
	}
	
	@Size(min=0, max=255, message="1 启用 2 停用长度不能超过 255 个字符")
	public String getUseStatus() {
		return useStatus;
	}

	public void setUseStatus(String useStatus) {
		this.useStatus = useStatus;
	}
	
	@Size(min=0, max=50, message="渠道ID长度不能超过 50 个字符")
	public String getChannalId() {
		return channalId;
	}

	public void setChannalId(String channalId) {
		this.channalId = channalId;
	}
	
}